﻿// Última Atualização: 27/02/2007 ~ 10:00
//  > Criação da Classe
namespace DDotNet.ORM.ORMapping.Attribute
{
    /// <summary>
    /// Atributo de Configuração de Entidades Filhas
    /// </summary>
    public sealed class ChildrenPropertySettings : System.Attribute
    {
        #region Fields

        private bool _CascadeDelete = true;
        private bool _CascadeUpdate = true;
        private bool _AutomaticLinkLoad = true;

        #endregion

        #region Properties

        /// <summary>
        /// Contém a Indicação da Carga Automâtica do Link.
        /// </summary>
        /// <remarks>Caso a Propriedade Contenha o Valor (TRUE) a Entidade Pai Carregará Automâticamente o Link do Banco de Dados</remarks>
        public bool AutomaticLinkLoad
        {
            get { return _AutomaticLinkLoad; }
            set { _AutomaticLinkLoad = value; }
        }

        /// <summary>
        /// Contém se o Link Suporta Exclusão em Cascata
        /// </summary>
        public bool CascadeDelete
        {
            get { return _CascadeDelete; }
            set { _CascadeDelete = value; }
        }

        /// <summary>
        /// Contém se o Link Suporta Inclusão e Atualização em Cascata
        /// </summary>
        public bool CascadeUpdate
        {
            get { return _CascadeUpdate; }
            set { _CascadeUpdate = value; }
        }

        #endregion
    }
}